import { get, post, deletes, put, resGet, resPost, resPut, resDeletes } from '@/libs/axios.js'

/** *********************登录**************************/
/**
 * 使用token查询用户信息
 * @returns 结果
 */
export const getUserInfo = () => {
  return get('/api/user/user/getUserInfo')
}

/**
 * 登录
 * @returns 结果
 */
export const login = (data) => {
  return post(`/api/auth/oauth/token?client_id=${data.clientId}&client_secret=${data.clientSecret}&grant_type=${data.grantType}&username=${data.userName}&password=${data.password}`)
}

/**
 * 获取用户菜单树
 * @returns  res.data
 */
export const selectUserPermissionTree = () => {
  return get(`/api/user/permission/selectUserPermissionTree`)
}
/** *********************用户**************************/

/**
 * 修改或添加用户
 * @returns 结果
 */
export const saveOrUpdate = (data) => {
  return post(`/api/user/user/saveOrUpdate`, data)
}

/**
 * 根据条件获取用户
 * @returns 结果
 */
export const selectAllByPage = (data) => {
  return post(`/api/user/user/selectAllByPage`, data)
}
/**
 * 批量删除用户
 * @returns 结果
 */
export const deleteUserList = (data) => {
  return post(`/api/user/user/delete`, data)
}

/**
 * 获取部门下员工
 * @returns 结果
 */
export const listByDepartmentId = (data) => {
  return get(`/api/user/user/listByDepartmentId/${data}`)
}

/** **************** 部门  ***********************/
/**
 * 添加部门
 * @param data json
 * @returns  结果
 */
export const addDepartment = (data) => {
  return post('/api/user/department', data)
}

/**
 * 修改重置部门
 * @param data json
 * @returns  结果
 */
export const restartDept = (data) => {
  return post('/api/user/department/restartDept', data)
}

/**
 * 获取部门树
 * @returns 结果
 */
export const getTree = () => {
  return get('/api/user/department/getTree')
}
/**
 * 删除部门
 * @returns 结果
 */
export const removeDept = (data) => {
  return post('/api/user/department/delete', data)
}
/** **************** 角色  ***********************/

/**
 * 分页查询角色
 * @param data json
 * @returns  结果
 */
export const selectRoleAllByPage = (data) => {
  return post('/api/user/role/selectByPage', data)
}

/**
 * 添加角色
 * @param data json
 * @returns  结果
 */
export const addRole = (data) => {
  return post('/api/user/role', data)
}
/**
 * 修改角色
 * @param data json
 * @returns  结果
 */
export const editRole = (data) => {
  return put('/api/user/role', data)
}

/**
 * 删除角色
 * @param data json
 * @returns  结果
 */
export const deleteRole = (data) => {
  return post('/api/user/role/delete', data)
}
/**
 * 设置默认角色
 * @param id json
 * @returns  结果
 */
export const setDefault = (id) => {
  return get(`/api/user/role/setDefault/${id}`)
}

/** **************** 菜单权限  ***********************/

/**
 * 添加菜单
 * @param data json
 * @returns  结果
 */
export const addPermission = (data) => {
  return post(`/api/user/permission/addPermission`, data)
}

/**
 * 添加菜单
 * @param data json
 * @returns  结果
 */
export const editPermission = (data) => {
  return put(`/api/user/permission`, data)
}
/**
 * 获取菜单树
 * @returns  res.data
 */
export const getPerTree = () => {
  return get(`/api/user/permission/getTree`)
}

/**
 * 删除菜单
 * @returns  res.data
 */
export const removePermission = (data) => {
  return post(`/api/user/permission/delete`, data)
}

/**
 * 获取角色对应菜单树
 * @returns  res.data
 */
export const getRolePerTree = (roleId) => {
  return get(`/api/user/rolePermission/getRolePerTree/${roleId}`)
}
/**
 * 获取角色对应菜单树
 * @returns  res.data
 */
export const resetRolePer = (data) => {
  return post(`/api/user/rolePermission/resetRolePer/${data.roleId}`, data.perIds)
}

/** *************  字典  ********************/

/**
 * 添加字典
 * @param data 数据
 */
export const addDict = (data) => {
  return post('/api/user/dict', data)
}
/**
 *分页查询字典
 * @param data 数据
 */
export const listDictByPage = (data) => {
  return post('/api/user/dict/selectByPage', data)
}
/**
 * 删除字典
 * @param data 数据
 */
export const deleteDictById = (data) => {
  return post(`/api/user/dict/delete_dict/${data}`)
}
